#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Core;
using Cephei.Core.Generic;
using Microsoft.FSharp.Core;
using Cephei.QL.Termstructures;
namespace Cephei.QL.Termstructures.Inflation
{
    /// <summary> 
	/// ! Bootstrap traits to use for PiecewiseZeroInflationCurve
	/// </summary>
    [Guid ("1A4F5A5B-E55A-4193-A755-E54B24668F98"),ComVisible(true)]
	public interface IZeroInflationTraits 
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
        /// <summary> 
		/// 
		/// </summary>
		 DateTime InitialDate(Cephei.QL.Termstructures.IZeroInflationTermStructure t);
        /// <summary> 
		/// 
		/// </summary>
		 Double InitialValue(Cephei.QL.Termstructures.IZeroInflationTermStructure t);
        /// <summary> 
		/// 
		/// </summary>
		 UInt64 MaxIterations {get;}
        /// <summary> 
		/// 
		/// </summary>
		 IZeroInflationTraits UpdateGuess(Cephei.Core.IVector<Double> data, Double level, UInt64 i);
    }   

    /// <summary> 
	/// ! Bootstrap traits to use for PiecewiseZeroInflationCurve Factory
	/// </summary>
   	[ComVisible(true)]
    public interface IZeroInflationTraits_Factory 
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
    }
}

